Visual Basic for Applications (
VBA) là một sự bổ sung của
Microsoft's Visual Basic, được xây dựng trong tất cả các ứng dụng
Microsoft Office (bao gồm cả phiên bản cho hệ điều hành
Mac OS), một số ứng dụng của Microsoft khác như
Microsoft MapPoint và
Microsoft Visio - một ứng dụng trước đây của Microsoft; ít nhất đã được bổ sung thành công trong những ứng dụng khác như
AutoCAD,
WordPerfect và
ESRI ArcGIS. Nó đã được thay thế và mở rộng trên khả năng của ngôn ngữ macro đặc trưng như WordBasic của Word, và có thể được sử dụng để điều khiển hầu hết tất cả khía cạnh của ứng dụng chủ, kể cả vận dụng nét riêng biệt về giao diện người dùng như các menu và toolbar và làm việc với các hình thái hoặc hộp thoại tùy ý. VBA có thể được sử dụng để tạo ra các bộ lọc xuất nhập cho các định dạng tập tin khác nhau như ODF.Như tên gọi của mình, VBA khá gần gũi với
Visual Basic, nhưng nó chỉ có thể chạy trong ứng dụng chủ chứ không phải 1 chương trình độc lập. Nó có thể được dùng để điều khiển 1 ứng dụng từ 1 OLE tự động (ví dụ, tự động tạo một bản báo cáo bằng
Word từ dữ liệu trong
Excel).VBA có nhiều khả năng và cực kì mềm dẻo nhưng nó có một số hạn chế quan trọng, bao gồm hỗ trợ hạn chế cho các hàm gọi lại. Nó có khả năng sử dụng (nhưng không tạo ra) các thư viện động, và các phân bản sau hỗ trợ cho các mô-đun lớp (class modules).